{
  "cells": [
    {
      "cell_type": "markdown",
      "metadata": {
        "colab_type": "text",
        "id": "GVYFEtbHAFjc"
      },
      "source": [
        "Copyright 2020 The Google Research Authors.\n",
        "\n",
        "Licensed under the Apache License, Version 2.0 (the \"License\"); You may not use this file except in compliance with the License. You may obtain a copy of the License at\n",
        "\n",
        "http://www.apache.org/licenses/LICENSE-2.0\n",
        "\n",
        "Unless required by applicable law or agreed to in writing, software\n",
        "distributed under the License is distributed on an \"AS IS\" BASIS,\n",
        "WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n",
        "See the License for the specific language governing permissions and\n",
        "limitations under the License."
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 0,
      "metadata": {
        "colab": {},
        "colab_type": "code",
        "id": "LE5LbtMEMerj"
      },
      "outputs": [],
      "source": [
        "import numpy as np\n",
        "import matplotlib.pyplot as plt\n",
        "import seaborn as sns\n",
        "import pandas as pd\n",
        "from pathlib import Path"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 0,
      "metadata": {
        "colab": {},
        "colab_type": "code",
        "id": "zmWULrABcB6_"
      },
      "outputs": [],
      "source": [
        "# dictionary of metrics to plot (each metric is shown in an individual plot)\n",
        "# dictionary key is name of metric in logs.csv, dict value is label in the final plot\n",
        "plot_metrics = {'ens_acc': 'Test accuracy',       # Ensemble accuracy\n",
        "                'ens_ce': 'Test cross entropy'}   # Ensemble cross entropy\n",
        "\n",
        "# directory of results\n",
        "# should include 'run_sweeps.csv', generated by run_resnet_experiments.sh/run_resnet_experiments.sh\n",
        "results_dir = '/tmp/google_research/cold_posterior_bnn/results_resnet/'"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 0,
      "metadata": {
        "colab": {},
        "colab_type": "code",
        "id": "K6RSltJfWfly"
      },
      "outputs": [],
      "source": [
        "# load csv with results of all runs\n",
        "sweeps_df = pd.read_csv(results_dir+'run_sweeps.csv').set_index('id')\n",
        "\n",
        "# add final performance of run as columns to sweep_df\n",
        "for metric in plot_metrics.keys():\n",
        "  sweeps_df[metric] = [0.] * len(sweeps_df)\n",
        "\n",
        "for i in range(len(sweeps_df)):\n",
        "  # get logs of run\n",
        "  log_dir = sweeps_df.loc[i, 'dir']\n",
        "  logs_df = pd.read_csv('{}{}/logs.csv'.format(results_dir, log_dir))\n",
        "  for metric in plot_metrics:\n",
        "    # get final performace of run and add to df\n",
        "    idx = 0\n",
        "    final_metric = float('nan')\n",
        "    while np.isnan(final_metric):\n",
        "      idx += 1\n",
        "      final_metric = logs_df.tail(idx)[metric].values[0] # indexing starts with 1\n",
        "    sweeps_df.at[i, metric] = final_metric\n",
        "\n",
        "# save/update csv file\n",
        "sweeps_df.to_csv(results_dir+'run_sweeps.csv')"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 0,
      "metadata": {
        "colab": {
          "height": 552
        },
        "colab_type": "code",
        "executionInfo": {
          "elapsed": 1073,
          "status": "ok",
          "timestamp": 1582558453646,
          "user": {
            "displayName": "Florian Wenzel",
            "photoUrl": "https://lh3.googleusercontent.com/a-/AAuE7mDb1y5xLgeaKT1uaXFi7TTfaPaykaKABsqm_Bcg=s64",
            "userId": "14181431703336769885"
          },
          "user_tz": -60
        },
        "id": "rLarzEN_blqB",
        "outputId": "ed2df22d-6c93-488a-e57f-0349441df86e"
      },
      "outputs": [
        {
          "data": {
            "image/png": "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\nHr/7TsNJAAAAAElFTkSuQmCC\n",
            "text/plain": [
              "\u003cFigure size 700x285 with 1 Axes\u003e"
            ]
          },
          "metadata": {
            "tags": []
          },
          "output_type": "display_data"
        },
        {
          "data": {
            "image/png": "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\nWaPRVDnanoiIiIjoeiQF1D59+mDLli1wOBwVttntdmzZsgX9+vXzuDgiIiIiangkBdRJkybBarVi\nwoQJ2LVrF86dO4dz587hxx9/xIQJE2C32/HYY4+hsLDQ7Q8RERER0Y1IGiTVt29fCIIAURRx4MAB\nt23lU0717dvXbb0gCK4J8omIiIiIqiIpoE6cONHbdRARERERAZAYUF988UVv10FEREREBEDiM6hE\nRERERLVF8qtOAWD79u3Ytm0bzp49CwCIiYlB//79OUE/EREREUkmKaA6HA4888wz+P777yGKIhSK\nssP85z//wYYNG9CvXz/MnTsXMhk7aImIiIioZiQlyC+//BLbtm3DgAEDsHnzZmRmZiIzMxObN2/G\noEGDsG3bNnz55ZferpWIiIiIGgBJATU1NRVdunTB3LlzER8fD0EQIAgC4uPj8f7776Nz585Yt26d\nt2slIiIiogZAUkA9e/bsdZ8z7dWrl+u5VCIiIiKimpAUUNVq9XXfDFVYWAi1Wi25KCIiIiJquCQF\n1DZt2uCbb75Bbm5uhW25ublYtWoV2rZt63FxRERERNTwSBrF//jjj2P8+PEYPHgwRo0ahdtuuw0A\ncOLECaxZswalpaWYPn26VwslIiIiooZBUkBt37495s6di9dffx2LFi2CIAgAAFEUodfrMXfuXLRv\n396rhRIRERFRwyB5ov5+/fqhZ8+eOHToEM6dOwdRFBEbG4u7774bfn5+3qyRiIiIiBqQGgdUk8mE\nlStXIiEhAffccw86deqETp061UZtRERERNQA1XiQlEajwfvvv89ppIiIiIioVkgaxd+oUaPrTjNF\nRERERCSVpIA6bNgwbNy4EVar1dv1EBEREVEDJ2mQVNeuXbF9+3aMHDkS48ePR2xsLDQaTYV2d9xx\nh8cFEhEREVHDIimgjh071vX1K6+8UmW748eP1+i4paWl+OKLL5CZmYnMzEwUFBRg5syZmDp16g33\nPXXqFFJTU5Geno6zZ89CqVTi9ttvx7Rp09C1a9cK7UtKSjB37lxs3boVBoMBrVq1wv/93/+hW7du\nFdqeOXMGb7/9Nvbt2wdRFNGpUye8/PLLiImJqdHnIyIiIqIbkxRQX3nlFdfcp95UUFCAefPmISoq\nComJifjpp5+qve+aNWuwZs0a9OvXD6NHj4bFYsGGDRvw2GOP4fXXX8eYMWNcbUVRxF//+lf85z//\n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\n",
            "text/plain": [
              "\u003cFigure size 700x285 with 1 Axes\u003e"
            ]
          },
          "metadata": {
            "tags": []
          },
          "output_type": "display_data"
        }
      ],
      "source": [
        "# plot\n",
        "font_scale = 1.1\n",
        "line_width = 3\n",
        "marker_size = 7\n",
        "cm_lines = sns.color_palette('deep')\n",
        "cm_points = sns.color_palette('bright')\n",
        "\n",
        "# style settings\n",
        "sns.reset_defaults()\n",
        "sns.set_context(\"notebook\", font_scale=font_scale,\n",
        "                rc={\"lines.linewidth\": line_width,\n",
        "                    \"lines.markersize\" :marker_size}\n",
        "                )\n",
        "sns.set_style(\"whitegrid\")\n",
        "\n",
        "for metric, metric_label in plot_metrics.items():\n",
        "  # plot SG-MCMC\n",
        "  fig, ax = plt.subplots(figsize=(7.0, 2.85))\n",
        "  g = sns.lineplot(x='temperature', y=metric, data=sweeps_df, marker='o', label='SG-MCMC', color=cm_lines[0], zorder=2, ci='sd')\n",
        "\n",
        "  # finalize plot\n",
        "  plt.legend(loc=3, fontsize=14)\n",
        "  g.set_xscale('log')\n",
        "  #g.set_ylim(bottom=0.88, top=0.94)\n",
        "  g.set_xlim(left=1e-4, right=1)\n",
        "  fig.tight_layout()\n",
        "  ax.set_frame_on(False)\n",
        "  ax.set_xlabel('Temperature $T$')\n",
        "  ax.set_ylabel(metric_label)\n",
        "\n",
        "  ax.margins(0,0)\n",
        "  plt.savefig('{}resnet_{}.pdf'.format(results_dir, metric_label),  format=\"pdf\", dpi=300, bbox_inches=\"tight\", pad_inches=0)"
      ]
    }
  ],
  "metadata": {
    "colab": {
      "collapsed_sections": [],
      "last_runtime": {
        "build_target": "",
        "kind": "local"
      },
      "name": "plot_results.ipynb",
      "provenance": []
    },
    "kernelspec": {
      "display_name": "Python 3",
      "name": "python3"
    }
  },
  "nbformat": 4,
  "nbformat_minor": 0
}
